import AssertionError from 'ol/AssertionError';
import AtlasManager from 'ol/style/AtlasManager';
// import Attribution from 'ol/Attribution';
import Attribution from 'ol/control/Attribution';
import Base from 'ol/layer/Base';
import BingMaps from 'ol/source/BingMaps';
import canvas from 'ol/render/canvas';
import CartoDB from 'ol/source/CartoDB';
import Circle from 'ol/geom/Circle';
// import Circle from 'ol/style/Circle';
import Cluster from 'ol/source/Cluster';
import Collection from 'ol/Collection';
import color from 'ol/color';
import colorlike from 'ol/colorlike';
import condition from 'ol/events/condition';
import control from 'ol/control';
import Control from 'ol/control/Control';
// import coordinate from 'ol/coordinate';
import DeviceOrientation from 'ol/deviceorientation';
import Disposable from 'ol/Disposable';
import DoubleClickZoom from 'ol/interaction/DoubleClickZoom';
import DragAndDrop from 'ol/interaction/DragAndDrop';
import DragBox from 'ol/interaction/DragBox';
import DragPan from 'ol/interaction/DragPan';
import DragRotateAndZoom from 'ol/interaction/DragRotateAndZoom';
import DragRotate from 'ol/interaction/DragRotate';
import DragZoom from 'ol/interaction/DragZoom';
import Draw from 'ol/interaction/Draw';
import easing from 'ol/easing';
import EsriJSON from 'ol/format/EsriJSON';
// import Event from 'ol/events/Event';
import Event from 'ol/render/Event';
import events from 'ol/events';
import EventTarget from 'ol/events/EventTarget';
import extent from 'ol/extent';
import Extent from 'ol/interaction/Extent';
// import Feature from 'ol/Feature';
import Feature from 'ol/format/Feature';
// import Feature from 'ol/render/Feature';
import featureloader from 'ol/featureloader';
import Fill from 'ol/style/Fill';
import filter from 'ol/format/filter';
import FullScreen from 'ol/control/Fullscreen';
import GeoJSON from 'ol/format/GeoJSON';
import Geolocation from 'ol/Geolocation';
import GeometryCollection from 'ol/geom/GeometryCollection';
import Geometry from 'ol/geom/Geometry';
import GML2 from 'ol/format/GML2';
import GML3 from 'ol/format/GML3';
import GMLBase from 'ol/format/GMLBase';
import GPX from 'ol/format/GPX';
import Graticule from 'ol/Graticule';
import Group from 'ol/layer/Group';
import Heatmap from 'ol/layer/Heatmap';
import Icon from 'ol/style/Icon';
import IGC from 'ol/format/IGC';
import ImageArcGISRest from 'ol/source/ImageArcGISRest';
import ImageBase from 'ol/ImageBase';
import ImageCanvas from 'ol/source/ImageCanvas';
// import Image from 'ol/Image';
import Image from 'ol/layer/Image';
// import Image from 'ol/source/Image';
// import Image from 'ol/style/Image';
import ImageMapGuide from 'ol/source/ImageMapGuide';
import ImageStatic from 'ol/source/ImageStatic';
import ImageTile from 'ol/ImageTile';
import ImageVector from 'ol/source/ImageVector';
import ImageWMS from 'ol/source/ImageWMS';
import interaction from 'ol/interaction';
import Interaction from 'ol/interaction/Interaction';
import JSONFeature from 'ol/format/JSONFeature';
import KeyboardPan from 'ol/interaction/KeyboardPan';
import KeyboardZoom from 'ol/interaction/KeyboardZoom';
import Kinetic from 'ol/Kinetic';
import KML from 'ol/format/KML';
import Layer from 'ol/layer/Layer';
import LinearRing from 'ol/geom/LinearRing';
import LineString from 'ol/geom/LineString';
import loadingstrategy from 'ol/loadingstrategy';
import MapBrowserEvent from 'ol/MapBrowserEvent';
import MapBrowserPointerEvent from 'ol/MapBrowserPointerEvent';
import MapEvent from 'ol/MapEvent';
import Map from 'ol/Map';
import Modify from 'ol/interaction/Modify';
import MousePosition from 'ol/control/MousePosition';
import MouseWheelZoom from 'ol/interaction/MouseWheelZoom';
import MultiLineString from 'ol/geom/MultilineString';
import MultiPoint from 'ol/geom/MultiPoint';
import MultiPolygon from 'ol/geom/MultiPolygon';
import MVT from 'ol/format/MVT';
import Object from 'ol/Object';
import Observable from 'ol/Observable';
import ol from 'ol';
import OSM from 'ol/source/OSM';
import OSMXML from 'ol/format/OSMXML';
import Overlay from 'ol/Overlay';
import OverviewMap from 'ol/control/OverviewMap';
import PinchRotate from 'ol/interaction/PinchRotate';
import PinchZoom from 'ol/interaction/PinchZoom';
import PointerEvent from 'ol/pointer/PointerEvent';
import Pointer from 'ol/interaction/Pointer';
import Point from 'ol/geom/Point';
import Polygon from 'ol/geom/Polygon';
import Polyline from 'ol/format/Polyline';
import Projection from 'ol/proj/Projection';
import proj from 'ol/proj';
import Raster from 'ol/source/Raster';
import RegularShape from 'ol/style/RegularShape';
import Rotate from 'ol/control/Rotate';
import ScaleLine from 'ol/control/ScaleLine';
import Select from 'ol/interaction/Select';
import SimpleGeometry from 'ol/geom/SimpleGeometry';
import Snap from 'ol/interaction/Snap';
import Source from 'ol/source/Source';
import Sphere from 'ol/sphere';
import Stamen from 'ol/source/Stamen';
import Stroke from 'ol/style/Stroke';
import Style from 'ol/style/Style';
import TextFeature from 'ol/format/TextFeature';
import Text from 'ol/style/Text';
import TileArcGISRest from 'ol/source/TileArcGISRest';
import TileDebug from 'ol/source/TileDebug';
import Tile from 'ol/layer/Tile';
// import Tile from 'ol/source/Tile';
// import Tile from 'ol/Tile';
import tilegrid from 'ol/tilegrid';
import TileGrid from 'ol/tilegrid/TileGrid';
import TileImage from 'ol/source/TileImage';
import TileJSON from 'ol/source/TileJSON';
import TileUTFGrid from 'ol/source/TileUTFGrid';
import TileWMS from 'ol/source/TileWMS';
import TopoJSON from 'ol/format/TopoJSON';
import Translate from 'ol/interaction/Translate';
import UrlTile from 'ol/source/UrlTile';
import VectorContext from 'ol/render/VectorContext';
import Vector from 'ol/layer/Vector';
// import Vector from 'ol/source/Vector';
// import VectorTile from 'ol/layer/VectorTile';
// import VectorTile from 'ol/source/VectorTile';
import VectorTile from 'ol/VectorTile';
import View from 'ol/View';
import WFS from 'ol/format/WFS';
import WKT from 'ol/format/WKT';
import WMSCapabilities from 'ol/format/WMSCapabilities';
import WMSGetFeatureInfo from 'ol/format/WMSGetFeatureInfo';
import WMTSCapabilities from 'ol/format/WMTSCapabilities';
import WMTS from 'ol/source/WMTS';
// import WMTS from 'ol/tilegrid/WMTS';
import XMLFeature from 'ol/format/XMLFeature';
import XML from 'ol/format/XML';
import XYZ from 'ol/source/XYZ';
import Zoom from 'ol/control/Zoom';
import Zoomify from 'ol/source/Zoomify';
import ZoomSlider from 'ol/control/ZoomSlider';
import ZoomToExtent from 'ol/control/ZoomToExtent';

// Map
const map: ol.Map = new Map({} as any);
declare const mapView: View;
map.setView(mapView);

// View
let view: View;
declare const coordinate: ol.Coordinate;
declare const size: ol.Size;
declare const position: ol.Pixel;
view = map.getView();
view.getProjection();
view.animate({} as any);
view.calculateExtent('size' as any);
view.centerOn(coordinate, size, position);
